package com.hyt.it.ogt.kq.service.bm.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.hyt.it.ogt.kq.service.bm.model.entity.TextBookBuyRecord;
import com.hyt.it.ogt.kq.service.bm.model.entity.TextBookInfo;
import com.hyt.it.ogt.kq.service.bm.model.entity.TextBookTotal;
import com.hyt.it.ogt.kq.service.bm.model.vo.TextBookBuyRecordsQueryVo;
import com.hyt.it.ogt.kq.service.bm.model.vo.TextBookPayList;
import com.hyt.model.PageParam;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 
 * @author wt
 * @version 2019年10月30日 下午5:01:02
 */
public interface TextBookMapper extends BaseMapper<TextBookInfo> {

	/**
	 * 任务购买教材数量统计
	 * @param pageParam
	 * @param officeId
	 * @return
	 */
	IPage<TextBookTotal> getTextBookTotal(PageParam<TextBookTotal> pageParam,@Param("officeId") String officeId);
	
	/**
	 * 查看任务的购买情况统计
	 * @param projcetId
	 * @return
	 */
	List<TextBookPayList> totalBooksPayList(@Param("projcetId") String projcetId);
	
	/**
	 * 教材购买记录
	 * @param pageParam
	 * @param textBookBuyRecordsQueryVo
	 * @return
	 */
	IPage<TextBookBuyRecord> findPayStuPageBook(PageParam<TextBookBuyRecord> pageParam, TextBookBuyRecordsQueryVo textBookBuyRecordsQueryVo);
	
	
	int exist(TextBookInfo TextBookInfo);

	List<TextBookInfo> findBookList(TextBookInfo TextBookInfo);

	List<TextBookInfo> getUseListInfo(TextBookInfo textBookInfo);

	

	List<TextBookInfo> getBooksByStudent(@Param("bmTextbookPayBusinessId") String bmTextbookPayBusinessId);

	List<Map<String, String>> getAreaCodeList(@Param("type") String type);

	/**
	 * 获取当前报名缴费成功人数
	 * 
	 * @return
	 */
	int getMaxStuNum();

	void saveSet(TextBookInfo textBookInfo);

	List<TextBookInfo> findPageLink(TextBookInfo textBookInfo);

	TextBookInfo getLink(@Param("id") String id);

	void saveLink(TextBookInfo textBookInfo);

	void updateLink(TextBookInfo textBookInfo);

	void deleteLink(TextBookInfo textBookInfo);

}